package com.xjoyt.pay.actuator.interfaces;

import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.xjoyt.pay.actuator.params.ServerPageParam;
import com.xjoyt.pay.actuator.po.Server;
import com.xjoyt.pay.dto.ExecuteResult;
import com.xjoyt.pay.dto.PageParam;
import com.xjoyt.pay.dto.PageResult;
import com.xjoyt.pay.master.params.ChannelPageParam;
import com.xjoyt.pay.master.vo.Channel;

public interface ServerContract {

	@RequestMapping("get/{id}")
	Server get(@PathVariable("id") String id);

	@RequestMapping(value = "save", method = RequestMethod.POST)
	ExecuteResult<?> save(@RequestBody Server server);

	@RequestMapping("remove/{id}")
	ExecuteResult<?> remove(@PathVariable("id") String id);

	@RequestMapping(value = "loadPage", method = RequestMethod.POST)
	PageResult<com.xjoyt.pay.actuator.vo.Server> loadPage(@RequestBody PageParam<ServerPageParam> params);
	
	@RequestMapping(value = "loadPageChannel", method = RequestMethod.POST)
	PageResult<Channel> loadPageChannel(@RequestBody PageParam<ChannelPageParam> params);

}
